immich 高性能相册管理工具-私有化部署【群晖】
Tony ⁺背景
以下是我当前生活照片、视频的管理思路。其他图片和视频会单独管理,有机会再分享。
iCloud + immich + 百度云
- iCloud
日常多设备同步还是很方便,图片信息搜索强大
- immich
性能超好,而且还支持网页查看,看生活视频非常流畅而且无损。拍的视频分享和家人和朋友预览,简直太棒了!无损、速度超快、界面友好。(前提是你已经做好了内网穿透)
我会将视频上传后,将本地和 iCloud 的视频删除,空间释放。
原本用的群晖自带的 moment,看图片还可以。但是对于视频支持非常糟糕,特别是 iPhone 的 HEVC 格式,长一点 mov 视频,网页端可能根本看不了,app 端还有加载进度条?! 查看视频非常难受,超级难用!分享给家人朋友预览界面也特别差!
- 百度云
用于冷备份,最后的保护;免费空间有 2T,阿里云免费空间小,而且被电影资源占据一些空间,所以选择百度云。
以部署到群晖 NAS - docker 为例
官方文档
https://github.com/imagegenius/docker-immich
民间大佬制作的轻量 docker 版
imagegenius/docker-immich: Monolithic (Single) Docker Container for Immich (github.com)
操作步骤
一、先在 docker 目录下创建文件夹
- immich
- config
- db
- photos
- machine
二、开始部署
我是在 portioner 里部署的,这个 docker 管理很好用。
点击
步骤2
会构建出 3 个容器
官方的 Docker Compose
1 | --- |
我修改过的
1 | --- |
如果有出现问题: 建议看看这个简短的视频!
https://www.bilibili.com/video/BV1ro4y1K76U/
目录介绍
photos
- upload
- 正在处理的文件
- thumbs
- 照片:生成 1 份小缩略图(webp) + 1 份大缩略图(jpeg)
- encoded-video
- 视频: 生成 1 份悬浮视频,用于快速预览
- library
- admin 这里面存的原文件(图片+视频)
- upload
machine
机器学习目录,用户人脸识别,地址位置分析config
配置信息目录db
数据库目录
备份恢复
我发现备份这 4 个目录是可以恢复的, 但是如果里面的信息被破坏了就麻烦了,我就经历过 :(
旧设备:
- 备份 immich 下的 4 个子目录
新设备:
- 先创建 immich 主目录, 再分别创建 4 个子目录
- 重新拉取镜像,创建容器,启动,页面打开成功!
- 删除 4 个子目录,并把之前备份的 4 个目录拖进来
你可能想问为什么要多次一举? 主要是怕目录权限出现问题,官方建议不要手动创建 db 目录,以免读取不到 immich 数据库。我也不记得哪里出现了问题,即使权限拉满了,依旧识别不到 immich 数据库。恢复备份后来单独做过测验,证明是可行的。跟官方沟通过,记得在替换的时候把相关容器先关闭哦!
注意事项
之前上传过的图片,即便拖拽到文件目录也会再上传一遍,因为是根据数据库信息做的校验,所以相同的会存有两份。所以只能通过官方的上传入口
immich 缺点:
- 稳定性
- 开源团队维护和疑问解答都非常积极,项目发展前景很好。但是只建议将 immich 只作为辅助工具,服务蹦了也不怕。
- 同步
- 因为是依赖数据库存储和加载内容,所以你直接将文件拖进
library/admin/
里面,它是不会处理的。你必须通过上传,系统会自动产生这张图片的相关信息。
- 因为是依赖数据库存储和加载内容,所以你直接将文件拖进
- 最坏的情况出现
- 当镜像无法启动,启动后无法进入管理页面,出现 502 等情况;不要着急, 建议直接去官方 issues 里搜索,或创建 issue 提问。
下期预告:
在使过用一段时间后我发现了一些细节问题,下一篇我将讲述为什么需要和 MT-Photo 双持使用。